home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 1 / PC Actual CD 01.iso / f1 / tutor1.arj / DATOS / CACHE2.SAC < prev    next >
Encoding:
Text File  |  1980-01-01  |  6.5 KB  |  143 lines

  1.  
  2. Consiste en una memoria de acceso muy rápido, intercalado
  3. entre el procesador y la memoria propiamente dicha.  En la
  4. memoria caché se almacenan datos con gran probabilidad de ser
  5. leídos.
  6.  
  7. Se las puede considerar como un veloz buffer entre cualquier
  8. medio de almacenamiento de datos y el destino de los datos,
  9. ya sea el procesador u otro dispositivo.
  10. Esto acorta el tiempo de lectura de los datos del dispositivo
  11. más rápido.
  12.  
  13. Este tipo de cachés deben disponer de un software que les
  14. permita decidir cuales son los datos que debe contener, de
  15. forma que cuando le sean pedidos obtenga una gran
  16. probabilidad de acertar, ahorrando el tiempo de leerlos.
  17.  
  18. El contenido de la caché debe ser capaz de adaptarse a los
  19. datos que hay en el dispositivo al que sirve de caché, de
  20. forma que si estos datos cambian la caché no proporcione los
  21. datos antiguos, sino los nuevos.
  22. Por ejemplo imaginémonos dos programas trabajando al mismo
  23. tiempo en un ordenador, uno lee un fichero, la caché carga
  24. los datos ante la posibilidad de que puedan ser utilizados,
  25. el primer programa acaba de procesar los datos del fichero,
  26. los actualiza y los graba, el segundo programa accede al
  27. mismo programa, la caché se da cuenta de que tiene los datos
  28. y se los manda, ahorrándose así el tiempo de leerlos, pero le
  29. ha mandado los datos antes de que estuviesen procesados por
  30. el primer programa, lo que es un gran fallo.
  31.  
  32. La forma más antigua de caché en el ▒PC▓ es el caché de disco,
  33. por el cual un área de RAM se usa para colocar los datos
  34. extraídos del disco duro.  Después se buscará en el caché
  35. para ver si los datos están en el, y en caso contrario
  36. copiaría toda la pista que contiene el nuevo sector dentro
  37. del caché.
  38. Cuando este caché está lleno un algoritmo se encarga de
  39. elegir que pistas eliminar.  Este algoritmo suelen basarse en
  40. eliminar la pista a la que hacía más tiempo que no se accedía
  41. ó eliminar aquella a la que se accedía menos a menudo.
  42. Los programas software de caché de disco suelen utilizar
  43. estos sistemas.
  44.  
  45. Hay controladores de disco que ya llevan implementado un
  46. sistema de caché de varios megas en la propia controladora,
  47. con lo que al ser procesado por el hardware de la
  48. controladora se gana tiempo, y al tener su propia memoria se
  49. ahorra RAM principal.
  50. Pueden basarse en el antiguo sistema de leer una pista
  51. completa cuando se les solicita un sector, y así si después
  52. se le siguen solicitando los siguientes los tendrá en
  53. memoria, eliminando el tiempo necesario para leerlos, o
  54. alguno de las nuevas rutinas inteligentes de prebúsqueda, que
  55. recuperan datos del disco duro incluso antes de que le sean
  56. pedidos.
  57.  
  58. Para la escritura también se puede usar una caché que recoja
  59. los datos a escribir, dejando al procesador que continúe
  60. trabajando mientras la controladora los escribe.  En estos
  61. sistemas hay que tener la precaución de dejar suficiente
  62. tiempo a la controladora como para escribir los datos antes
  63. de resetear el sistema o de apagarlo, pues se podrían perder
  64. los datos.
  65.  
  66. La llegada de los ordenadores 386 supuso la imposibilidad de
  67. que las memorias pudiesen hacer frente a la velocidad del
  68. procesador, así que el procesador tenía que esperar hasta que
  69. un datos quedase completamente almacenado en la RAM para
  70. seguir trabajando, lo que lo hacía perder gran cantidad de
  71. tiempo.
  72.  
  73. Para solucionar este problemas se crearon unas áreas de
  74. almacenamiento caché entre el procesador y la memoria RAM,
  75. que almacenaba los datos que el procesador necesitaba más a
  76. menudo, y se encargaba de recogerlos para su escritura.
  77.  
  78. Así cuando se pide un dato, es necesario comprobar si está en
  79. el caché o ha de ser leído de la RAM, evitando leer datos que
  80. no han sido actualizados y aumentando la velocidad de
  81. lectura.  Para realizar esta comprobación hay tres sistemas,
  82. el asociativo, el de mapeado directo y el de RAM asociativa
  83. de grupo.
  84.  
  85.      -Caché asociativo: la RAM del caché mantiene los
  86.       contenidos de las últimas localizaciones N de la
  87.       memoria a las que se ha accedido, donde N es el tamaño
  88.       de caché.
  89.       Cualquier localización del caché puede ser asociada a
  90.       la memoria principal, y el controlador del caché tiene
  91.       que buscar cada localización del caché para descubrir
  92.       aciertos o pérdidas.
  93.  
  94.      -Caché de mapeado directo: para establecer un acierto o
  95.       una pérdida del caché, el controlador sólo necesita
  96.       comparar el resto de la dirección con los bits
  97.       superiores de la dirección de la fuente de los datos en
  98.       esa localización de caché.
  99.       Son los más utilizados, ya que son rápidos y baratos.
  100.  
  101.      -Caché de RAM asociativa de grupo: ahorra gran parte del
  102.       tiempo de búsqueda del caché mediante la división de
  103.       las localizaciones en dos o cuatro secciones.  Cada una
  104.       de estas se asocia a un juego especial de
  105.       localizaciones en la memoria principal, de modo que,
  106.       dada una dirección de la memoria principal, sólo una
  107.       fracción del caché necesita ser buscada.
  108.  
  109.  
  110. El principal problema de estas memorias caché son los accesos
  111. a memoria mediante ▒DMA▓, que evitan la caché, accediendo
  112. directamente a la memoria, para controlar esto es necesaria
  113. la utilización de hardware de intromisión.
  114. Este hardware detecta el comienzo de la transferencia DMA y
  115. el controlador de caché determina lo que sucederá a
  116. continuación.  Cuando el DMA accede a la memoria, se marcan
  117. los datos del caché pertenecientes a las direcciones a las
  118. que se está accediendo como inválidas, de forma que no sean
  119. reescritas por el controlador de la caché.
  120.  
  121. Los diseños del caché de la RAM se pueden mejorar cacheando
  122. los datos transferidos por DMA, de la misma manera que se
  123. cachea la memoria principal.  Pero la mayoría de los cachés
  124. de la RAM de los PCs no son tan sofisticados.
  125.  
  126. El procesador ▒486▓ (y también el ▒PENTIUM▓), tiene una caché
  127. interna de 8 Kbytes para instrucciones y otros 8 para datos.
  128.  
  129. Otra caché que es muy utilizada y que muchos usuarios
  130. desconocen es la Shadow RAM, que consiste en copiar la ▒BIOS▓
  131. del sistema en la memoria RAM.  De esta forma cuando se usan
  132. los procedimientos de la BIOS no es necesario acceder a las
  133. ROMs donde se encuentra instalada, que son más lentas.  A
  134. este proceso se le llama también "sombreado".
  135.  
  136. Así, a modo de resumen, se puede decir que la caché será más
  137. rápida en los discos cuando se acceda a los datos de forma
  138. secuencial (datos contiguos), mientras que el el caso de la
  139. RAM los accesos serán más rápidos mientras no se usen los
  140. canales de acceso directo a memoria (DMA).
  141.  
  142.  
  143.